package jwtauth

import (
	"encoding/json"
)

// tokenInfo 令牌信息
type tokenInfo struct {
	AccessToken  string `json:"access_token"` // 访问令牌
	RefreshToken string `json:"refresh_token"`
	TokenType    string `json:"token_type"` // 令牌类型
	ExpiresAt    int64  `json:"expires_at"` // 令牌到期时间
}

func (t *tokenInfo) GetAccessToken() string {
	return t.AccessToken
}

func (t *tokenInfo) GetRefreshToken() string {
	return t.RefreshToken
}

func (t *tokenInfo) GetTokenType() string {
	return t.TokenType
}

func (t *tokenInfo) GetExpiresAt() int64 {
	return t.ExpiresAt
}

func (t *tokenInfo) EncodeToJSON() ([]byte, error) {
	return json.Marshal(t)
}
